namespace Umdf.ComInterop
{
    using System;
    using System.Runtime.CompilerServices;
    using System.Runtime.InteropServices;

    [ComImport, TypeLibType((short) 0x200), InterfaceType((short) 1), Guid("E7ECE381-7CB1-468A-BC43-ABD5948FFC75")]
    public interface IQueueCallbackStateChange
    {
        [PreserveSig, MethodImpl(MethodImplOptions.InternalCall, MethodCodeType=MethodCodeType.Runtime)]
        void OnStateChange([In, MarshalAs(UnmanagedType.Interface)] IWDFIoQueue pWdfQueue, [In] _WDF_IO_QUEUE_STATE QueueState);
    }
}

